// mobx store小案例

import {makeAutoObservable} from 'mobx'
class CounterStore {
    // 定义数据
    count = 0
    // 定义一个原始数据 
    list = [1,2,3,4,5,6]
    constructor() {
        // 把数据变成响应式的
        makeAutoObservable(this)
    }

    // 定义计算属性
    get filterList() {           // 使用的原生的get属性,会变成一个计算属性
        return this.list.filter(item => item > 2)
    }
    // actions
    addList = () => {
        this.list.push(7,8,9)
    }

    // 定义action 函数（修改数据）
    addCount = () => {
        this.count++
    }
}

// 实例化，然后导出给react使用

const counterStore = new CounterStore()

export default counterStore